Обсуждение называется управляемым сервером, если выбор самого лучшего представления для ответа произведен алгоритмом, размещенным на сервере. Выбор основан на доступных представлениях ответа (они могут различаться по нескольким характеристикам; например языку, кодированию содержимого (content-coding), и т.д.) и содержании специфических полей заголовка в сообщении запроса, или на другой информации, имеющей отношение к запросу (такой как сетевой адрес клиента).
Управляемое сервером обсуждение выгодно, когда алгоритм выбора из числа доступных представлений трудно описать агенту пользователя, или когда сервер желает послать "лучшее предположение" клиенту одновременно с первым ответом (надеясь избежать задержки пересылки туда и обратно последующего запроса, если "лучшее предположение" устроит пользователя). Чтобы улучшить предположение сервера, агент пользователя МОЖЕТ включать поля заголовка запроса (Accept, Accept-Language, Accept-Encoding, и т.д.), которые описывают предпочтительный ответ.
Управляемое сервером обсуждение имеет недостатки:
1. Сервер не может точно определить, что могло бы быть "самым лучшим" для данного пользователя, так как это требует полного знания, как возможностей агента пользователя, так и целей использования ответа (например, пользователь хочет просматривать его на экране или печатать на бумаге).
2. Наличие описания возможностей агента пользователя в каждом запросе может быть очень неэффективным (при условии, что только небольшой процент ответов имеет несколько представлений) и потенциально нарушает секретность пользователя.
3. Оно усложняет реализацию первоначального сервера и алгоритмов генерации ответов на запрос.
4. Оно может ограничивать способность общего кэша использовать один и тот же ответ для запросов нескольких пользователей.
HTTP/1.1 включает следующие поля заголовка запроса request-header), которые обеспечивают управляемое серверомобсуждение посредством описания возможностей агента пользователя и предпочтений самого пользователя: Accept (раздел 14.1), Accept-Charset (раздел 14.2), Accept-Encoding (раздел 14.3), Accept-Language (раздел 14.4), and User-Agent (раздел 14.42). Однако первоначальный сервер не ограничен этим и МОЖЕТ изменить ответ, основываясь на любом аспекте запроса, включая информацию, которая не содержится в полях заголовка запроса или информацию из расширенных полей заголовка, не определенных в этой спецификации.
Первоначальный сервер HTTP/1.1 ДОЛЖЕН включать соответствующее поле заголовка Vary (раздел 14.43) в любой кэшируемый ответ, основанный на управлямом сервером обсуждении. Поле заголовка Vary описывает характеристики, которые могут меняться в ответе (то есть характеристики, согласно которым первоначальный сервер выбирает "наилучший" ответ из нескольких представлений).
Общие HTTP/1.1 кэши ДОЛЖНЫ распознать поле заголовка Vary, если он присутствует в ответе, и отвечать требованиям, описанным в разделе 13.6, который описывает взаимодействия между кэшированием и обсуждением содержимого.